# GitLab CI/CD Variables Manager Script

## Описание

Этот скрипт позволяет управлять переменными CI/CD в проектах GitLab. Вы можете получать список переменных, а также добавлять или обновлять переменные для разных окружений.

## Использование

### Переменные окружения

Перед использованием скрипта установите переменные окружения `GITLAB_HOST` и `GITLAB_TOKEN`:

    GITLAB_HOST: Базовый URL вашего GitLab instance (например, https://gitlab.example.com).
    GITLAB_TOKEN: Личный токен доступа для API GitLab.

Пример установки переменных окружения:

```
$env:GITLAB_HOST = "https://gitlab.example.com"
$env:GITLAB_TOKEN = "your_access_token"
```

### Получение переменных

Вы можете получить список переменных для проекта с помощью команды `GetVariables`:

   ``` powershell
   .\gitlab-ci-cd.ps1 GetVariables "my-project-name-slug" [-e <environment>] [-ExportToFile]
   ```

**Параметры**:

-   `<"my-project-name-slug">`: Слаг проекта в GitLab.
-   -e, -Environment <string>: (опционально) Окружение для фильтрации переменных.
-  -ExportToFile: (опционально) Экспортировать вывод в файл.

### Примеры:

Получить все переменные проекта:

```powershell
.\gitlab-ci-cd.ps1 GetVariables "my-project-name-slug"
```

Получить переменные для окружения production:

```powershell
.\gitlab-ci-cd.ps1 GetVariables "my-project-name-slug" -e production
```

Экспортировать переменные в файл:

```powershell
.\gitlab-ci-cd.ps1 GetVariables "my-project-name-slug" -ExportToFile
```

### Добавление или обновление переменной

Вы можете добавить или обновить переменную с помощью команды `AddOrUpdateVariable`:

```powershell
.\gitlab-ci-cd.ps1 AddOrUpdateVariable "my-project-name-slug" -k <VariableKey> -v <VariableValue> [-e <environment>]
```

**Параметры**:

- `<"my-project-name-slug">` : Слаг проекта в GitLab.
- -k, -VariableKey <string>: Ключ переменной.
- -v, -VariableValue <string>: Значение переменной.
- -e, -Environment <string>: (опционально) Окружение для переменной.

### Примеры:

Добавить новую переменную:

```powershell
.\gitlab-ci-cd.ps1 AddOrUpdateVariable "my-project-name-slug" -k NEW_VARIABLE -v new_value
```

Добавить переменную для окружения `production`:

```powershell
.\gitlab-ci-cd.ps1 AddOrUpdateVariable "my-project-name-slug" -k NEW_VARIABLE -v new_value -e production
```



